package com.dragon.modules.yuegou.service.park;

import com.baomidou.mybatisplus.extension.service.IService;
import com.dragon.modules.yuegou.entity.park.EntranceEntity;
import com.dragon.modules.yuegou.entity.park.HistoryEntity;
import com.dragon.modules.yuegou.model.order.Order;
import com.dragon.modules.yuegou.model.park.ParkReportQuery;
import com.dragon.modules.yuegou.model.park.ParkingReportModel;
import com.dragon.modules.yuegou.model.park.Record;
import com.dragon.modules.yuegou.model.system.Document;
import com.dragon.modules.yuegou.query.park.HistoryQuery;

/**
 * 历史停车信息表 服务接口
 *
 * @author px
 * @date 2019-03-27 14:45:59
 * @version 2.0
 */
public interface HistoryService extends IService<HistoryEntity> {

    /**
     * 导出停车记录
     * */
    Document exportHistory(HistoryQuery query);
	
	/**
	 * 创建停车历史记录
	 * @param thirdId
	 */
	void createHistory(String thirdId);

	/**
	 * 创建kt停车历史记录
	 * @param thirdId
	 */
	void createKtHistory(String thirdId);
	/**
	 * 车辆进场时创建停车历史记录
	 * @param entrance
	 */
	void createEnterHistory(EntranceEntity entrance);

	/**
	 * 支付完停车费创建历史记录
	 * @param parkRecord
	 */
	void createPayedHistory(Record parkRecord, Order order);

	/**
	 * 时间段内停车场的出入场收入数据
	 * @param reportQuery
	 * @return
	 */
	ParkingReportModel getParkEnterAndOutTotal(ParkReportQuery reportQuery);
}